МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА”
РОБОТА З МАСИВАМИ.
ВИКОРИСТАННЯ ПРОЦЕДУР ТА ФУНКЦІЙ
ІНСТРУКЦІЯ ДО ЛАБОРАТОРНОЇ РОБОТИ № 3
З КУРСУ “АЛГОРИТМІЧНІ МОВИ І ПРОГРАМУВАННЯ”
для студентів спеціальності
6.0914 “Комп’ютеризовані системи, автоматика і управління” та
6.1601 “Інформаційна безпека”
Затверджено на засiданнi кафедри “Автоматика і
телемеханіка”, протокол
№___ від __.__.200__ р.
Львів – 2006
Робота з масивами. Використання процедур та функцій: інструкція до лабораторної роботи №3 з курсу “Алгоритмічні мови і програмування” для студентів спеціальності 6.0914 “Комп'ютеризовані системи, автоматика і управління” та 6.1601 “Інформаційна безпека” / Укл.: ____________, Б.Д.Будз, О.І.Гарасимчук - Львів: НУЛП, 2006.- 16 с.
Укладачі: ______________________________,
Б.Д. Будз, асистент,
О.І. Гарасимчук, асистент.
Відповідальний за випуск:
__________________________________.
Рецензент: __________________________________.
Мета роботи - вивчити синтаксис опису і використання в програмах змінних типу масив, навчитися використовувати масиви для оброблення матриць, вивчити основні алгоритми сортування масивів; навчитися описувати та застосовувати у програмах процедури і функції для виконання логічно закінчених алгоритмів.
1. ОСНОВНІ ТЕОРЕТИЧНІ ВІДОМОСТІ
1.1. Масиви.
Масив - це сукупність елементів одного типу, доступ до кожного з яких забезпечується вказанням ідентифікатора масиву і порядкового номера (індексу) елемента в масиві. Кількість елементів у масиві задається під час описання змінної-масиву і надалі в програмі змінюватися не може. Розмір масиву не може перевищувати 64 кбайт (65535 байт). Оперативна пам'ять, виділена для локальної змінної-масиву при її описі, як правило, звільняється після закінчення виконання процедури (функції), в якій вона описана.
Для опису змінної типу масив, як правило, спочатку описують тип-масив в розділі опису типів, після чого в розділі опису змінних описують змінну-масив, використовуючи ім'я описаного типу-масиву:
type
<ім'я_типу> = array[<тип_індексу>{,<тип_індексу>}] of <тип_елементів>;
...
var
<ім'я_змінної> : <ім'я_типу>;
де array, of - зарезервовані слова Турбо-Паскаля;
<ім'я_типу>, <ім'я_змінної> - ідентифікатори мови Турбо-Паскаль;
<тип_індексу> - будь-який порядковий тип, крім longint і типів-діапазон з базовим типом longint.
Як правило, використовується тип-діапазон;
<тип_елементів> - будь-який тип мови Турбо-Паскаль, зокрема структурований.
Використовується також спрощена форма опису змінної-масиву:
var
<ім'я_змінної> : array[<тип_індекса>{,<тип_індекса>}] of <тип_елементів>;
В оперативній пам'яті комп'ютера елементи масиву розташовані один за одним так, що при переході від молодших до старших адрес у першу чергу змінюється крайній правий індекс масиву.
Алгоритми оброблення масивів програмуються, як правило, з використанням оператора циклу for.
Нижче наведена програма, яка вводить елементи двовимірного масиву з клавіатури і виводить на екран квадрати їх значень.
program Array_Demo;
const
N=5;
M=10;
type
Matrix=array[1..N,1..M] of real;
var
a : Matrix;
i,j : integer;
BEGIN
writeln('Введіть елементи матриці :');
for i:=1 to N do
for j:=1 to M do
begin
write (' а[',i,j,']= ');
read (a[i,j])
end;
writeln('Значення елементів матриці, піднесених до квадрата :');
for i:=1 to N do
for j:=1 to M do
writeln (' квадрат а[',i,j,']= ', sqr(a[i,j]));
END.
1.2. Процедури і функції.
Засобами структурних методів розроблення програмного забезпечення в мові Турбо-Паскаль є процедури і функції.
Різниця між функцією і процедурою полягає в тому, що результатом виклику функції (виконання послідовності її внутрішніх операторів) є значення деякого типу, вказаного при її описі. Тому виклик функції може використовуватися тільки як операнд виразу або фактичний параметр. Процедура в зовнішню програму безпосередньо значення не повертає. Якщо необхідно, це можна зробити через параметр-змінну. Процедура не може використовуватися як опер...